昨天介紹了 Bean的配置 方式,接下來打算介紹基於註解配置中的一些Bean,但在介紹今天的Bean前,需要先稍微介紹一下在Spring Boot內的一種架構模式-Spring MVC。
Spring MVC 是基於Web服務的應用程式,它將程式拆成 模型(Model)、視圖(View)、控制器(Controller)等三個部分:
接下來幾天的文章主要會介紹Spring MVC中的”C” —控制器(Controller),並探討在Controller下常會一起使用到的註解。
在 Controller 的類別中,主要會使用到 @RestController
& @Controller
這兩個註解:
@RestController
是用於開發 RESTful Web 服務的註解,是專門用來處理 REST API 請求,並回傳 JSON 或 XML 等格式的資料。在應用程式開發上,如果收到API請求後的回覆只需提供資料供前端使用(例如:前端頁面欲發API至後端取得一些交易資料,Controller收到請求後會透過查詢條件經業務邏輯層處理後將查詢結果返回給前端,前端再自行想辦法將資料呈現在頁面上)的話,此時可以使用 @RestController
。@Controller
是用於處理 Web 請求並回傳一個Web頁面,若想要回傳JSON格式的資料內容,則須在方法上加上 @ResponseBody
。在應用程式開發上,如果收到請求後的回覆需要返回一個HTML頁面(例如:開發一個需要使用者登入的網頁,在登入成功後,Controller可能會返回一個指定的頁面),則適合使用 @Controller
。